from bpy.types import Node
import bpy
# 集合管理系统
# 1.物体节点
# 2.集合节点
#   物体节点连上集合节点 即可 自动关联到该集合
#   物体节点从集合节点断开，则取消该关联


class Node_Object(Node):
    bl_label = '物体'
    bl_icon = 'NONE'
    bl_width_min = 200.0
    bl_width_max = 400.0
    object: bpy.props.PointerProperty(type=bpy.types.Object)

    # 节点初始化
    def init(self, context):
        # 不需要新建输出节点
        print("Init")
        self.outputs.new('NodeSocketString', '物体名')
        self.width = 280

    def draw_buttons(self, context, layout):
        layout.prop(self, "object")

    # 节点更新
    def update(self):
        if self.object:
            self.outputs[0].default_value = self.object.name
            # print(self.outputs[0].default_value)
